#ifndef _INPUT_MANAGER_H
#define _INPUT_MANAGER_H
#include <sys/time.h>
#include <pthread.h>
/*输入设备类型*/
typedef enum{
	INPUT_DEVICE_TOUCHSCREEN=0,
	INPUT_DEVICE_MOUSE,
}E_InputType;
/*输入事件描述结构体*/
typedef struct InputEvent {
	struct timeval tTime;   
	// int iType;  
	int iX;     
	int iY;
	int iWheel;       /*-1:up   1:down*/
	int iPressure;
	int iInputDevice;
}T_InputEvent, *PT_InputEvent;
/*输入设备操作结构体*/
typedef struct InputOpr {
	char *name;          
	pthread_t tTreadID;  
	int (*DeviceInit)(void);  
	int (*DeviceExit)(void);  
	int (*GetInputEvent)(PT_InputEvent ptInputEvent);  
	struct InputOpr *ptNext;
}T_InputOpr, *PT_InputOpr;

int InputInit(void);

int RegisterInputOpr(PT_InputOpr ptInputOpr);

void ShowInputOpr(void);

int AllInputDevicesInit(void);

int GetInputEvent(PT_InputEvent ptInputEvent);

int StdinInit(void);

int TouchScreenInit(void);

int MouseInit(void);

#endif 

